﻿using HongYeSystemWebApi.Templet.Entity.ApiResult;
using HongYeSystemWebApi.Templet.Entity.Entities;
using HongYeSystemWebApi.Templet.Entity.Request;
using HongYeSystemWebApi.Templet.Entity.Request.SysProject;
using HongYeSystemWebApi.Templet.Entity.Response;
using HongYeSystemWebApi.Templet.Entity.Response.Project;
using System;
using System.Threading.Tasks;

namespace HongYeSystemWebApi.Templet.IService
{
    public interface IProjectService
    {
        /// <summary>
        /// 新增项目
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        Task InsertAsync(SysProjectInsertRequest request);
        /// <summary>
        /// 更新项目
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        Task UpdateAsync(SysProjectUpdataRequest request);

        /// <summary>
        /// 删除项目
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
          Task DeleteAsync(MultiIdRequest request);
        /// <summary>
        /// 获取项目信息列表
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
          Task <PageModel<SysProjectDataPageResponse>> GetListAsync(SysProjectSelectRequest request);


           Task<ApiResult> ExportByGetListAsync(SysProjectSelectRequest request);
        /// <summary>
        /// 导出所有的项目数据
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        Task<ApiResult> ExportAll();
    }
}
